#pragma once

#include <Windows.h>
#include "GlobalVariable.h"

/***********************************************
 Print out a message, logo, main table, etc..
 ***********************************************/
class Screen
{
private:
	enum { LOADFAIL = 0	//File read fail
		,SAVEFAIL		//File write fail
		,ADDFAIL		//Data addition fail
		,SEARCHFAIL		//Data search fail 
		,DATAEMPTY		//Data print list fail
		,HELPFAIL		//Print help message fail
		,NOMATCHINST	//Not exsist instruction 
		,NOMATCHOP		//Not exsist option
		,FIRSTPG		//First page
		,ENDPG 			//End page
		};
	
public:
/*Member Function List*/
	Screen();	// initialize logo, main_page, message 
	~Screen();
	
	bool printLogo();
	bool printError(int mode);
	bool printTable();
	bool printData(const DataTable& rhs);
	void gotoxy(int row, int col);

	void setListSize(const int input) { list_size = input; }
private:
	/*Member variable List*/
	string 	logo,
			main_page;
	string	err_message[12];
	int		list_size;
};